
// /Projects/btstack/port/libusb/build/clock_server.h generated from /Projects/btstack/port/libusb/../../example/clock_server.gatt for BTstack
// it needs to be regenerated when the .gatt file is updated. 

// To generate /Projects/btstack/port/libusb/build/clock_server.h:
// ../../../tool/compile_gatt.py /Projects/btstack/port/libusb/../../example/clock_server.gatt /Projects/btstack/port/libusb/build/clock_server.h

// att db format version 1

// binary attribute representation:
// - size in bytes (16), flags(16), handle (16), uuid (16/128), value(...)

#include <stdint.h>

const uint8_t profile_data[] =
{
    // ATT DB Version
    1,

    // 0x0001 PRIMARY_SERVICE-GAP_SERVICE
    0x0a, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00, 0x28, 0x00, 0x18, 
    // 0x0002 CHARACTERISTIC-GAP_DEVICE_NAME-READ
    0x0d, 0x00, 0x02, 0x00, 0x02, 0x00, 0x03, 0x28, 0x02, 0x03, 0x00, 0x00, 0x2a, 
    // 0x0003 VALUE-GAP_DEVICE_NAME-READ-'DEFCON Clock'
    // READ_ANYBODY
    0x14, 0x00, 0x02, 0x00, 0x03, 0x00, 0x00, 0x2a, 0x44, 0x45, 0x46, 0x43, 0x4f, 0x4e, 0x20, 0x43, 0x6c, 0x6f, 0x63, 0x6b, 
    // Clock Service

    // 0x0004 PRIMARY_SERVICE-0000FF10-0000-1000-8000-00805F9B34FB
    0x18, 0x00, 0x02, 0x00, 0x04, 0x00, 0x00, 0x28, 0xfb, 0x34, 0x9b, 0x5f, 0x80, 0x00, 0x00, 0x80, 0x00, 0x10, 0x00, 0x00, 0x10, 0xff, 0x00, 0x00, 
    // Password Characteristic, with read and write
    // 0x0005 CHARACTERISTIC-0000FF11-0000-1000-8000-00805F9B34FB-READ | WRITE | READ_ANYBODY | WRITE_AUTHENTICATED | DYNAMIC
    0x1b, 0x00, 0x02, 0x00, 0x05, 0x00, 0x03, 0x28, 0x0a, 0x06, 0x00, 0xfb, 0x34, 0x9b, 0x5f, 0x80, 0x00, 0x00, 0x80, 0x00, 0x10, 0x00, 0x00, 0x11, 0xff, 0x00, 0x00, 
    // 0x0006 VALUE-0000FF11-0000-1000-8000-00805F9B34FB-READ | WRITE | READ_ANYBODY | WRITE_AUTHENTICATED | DYNAMIC-''
    // READ_ANYBODY, WRITE_AUTHENTICATED
    0x16, 0x00, 0x1a, 0x03, 0x06, 0x00, 0xfb, 0x34, 0x9b, 0x5f, 0x80, 0x00, 0x00, 0x80, 0x00, 0x10, 0x00, 0x00, 0x11, 0xff, 0x00, 0x00, 
    // Clock Characteristic, with read and write
    // 0x0007 CHARACTERISTIC-0000FF12-0000-1000-8000-00805F9B34FB-READ | WRITE | READ_ANYBODY | WRITE_AUTHENTICATED | DYNAMIC
    0x1b, 0x00, 0x02, 0x00, 0x07, 0x00, 0x03, 0x28, 0x0a, 0x08, 0x00, 0xfb, 0x34, 0x9b, 0x5f, 0x80, 0x00, 0x00, 0x80, 0x00, 0x10, 0x00, 0x00, 0x12, 0xff, 0x00, 0x00, 
    // 0x0008 VALUE-0000FF12-0000-1000-8000-00805F9B34FB-READ | WRITE | READ_ANYBODY | WRITE_AUTHENTICATED | DYNAMIC-''
    // READ_ANYBODY, WRITE_AUTHENTICATED
    0x16, 0x00, 0x1a, 0x03, 0x08, 0x00, 0xfb, 0x34, 0x9b, 0x5f, 0x80, 0x00, 0x00, 0x80, 0x00, 0x10, 0x00, 0x00, 0x12, 0xff, 0x00, 0x00, 

    // END
    0x00, 0x00, 
}; // total size 103 bytes 


//
// list service handle ranges
//
#define ATT_SERVICE_GAP_SERVICE_START_HANDLE 0x0001
#define ATT_SERVICE_GAP_SERVICE_END_HANDLE 0x0003
#define ATT_SERVICE_0000FF10_0000_1000_8000_00805F9B34FB_START_HANDLE 0x0004
#define ATT_SERVICE_0000FF10_0000_1000_8000_00805F9B34FB_END_HANDLE 0x0008

//
// list mapping between characteristics and handles
//
#define ATT_CHARACTERISTIC_GAP_DEVICE_NAME_01_VALUE_HANDLE 0x0003
#define ATT_CHARACTERISTIC_0000FF11_0000_1000_8000_00805F9B34FB_01_VALUE_HANDLE 0x0006
#define ATT_CHARACTERISTIC_0000FF12_0000_1000_8000_00805F9B34FB_01_VALUE_HANDLE 0x0008
